1. Field of the Invention
The present invention relates to an adapter capable of communicating with an image supply device and an image output device (printer) to print an image stored in the image supply device, and to a method of controlling such adapter.
2. Description of the Related Art
In recent years, a digital camera or an image sensing device capable of taking an image and converting the image into digital image data has become very popular. A direct print system is also widely used, which allows image data to be directly transmitted from a digital camera to a printer to obtain a printed photographic image.
However, the direct print function is provided in a preinstalled form, and it is very difficult or impossible to update the direct print function preinstalled in a digital camera or a printer after the digital camera or the printer was sold. Besides, direct print systems are not designed according to common standards or specifications, and there is no compatibility among different direct print systems. At present, most digital cameras and printers can be directly connected only when a USB connection is used. On the other hand, a camera-equipped mobile telephone having a wireless communication capability has become very popular, and some direct print systems allow a wireless connection between a printer and a camera-equipped mobile telephone.
In view of the above, there is a need for an adapter that allows different types of devices to be directly connected to a printer to achieve a direct print function.
In a conventional personal computer environment, a print conversion adapter called a print server is known, which allows a printer to be shared by a plurality of users and which also allows extension of functions of a printer.
FIG. 21 is a diagram showing a conventional print server system in a personal computer environment.
In this example, the print server system includes print servers 2115 and 2116 that respectively control printers 2117 and 2119, which are shared among clients 2111, 2112, and 2113. In this print server system, printing using, for example, the printer 2117, can be performed as follows.
First, a client (for example, the client 2111) sends document data to be printed to the print server 2115 via a network 2110. Each page of the document data includes a print command string that describes content such as characters, graphics, and images to be printed. The print command string is also called a PDL (Page Description Language).
If the print server 2115 receives the document data from the client 2111, the print server 2115 temporarily stores the received document data in a file called a spool in the print server 2115. The print server 2115 then reads the document data and transfers the data to the printer 2117 to print it. The printer 2117 performs printing on paper in accordance with the received document data.
As described above, the print server system is generally designed such that information is transmitted between a printer (such as the printer 2117 or 2119) and a print server (such as the print server 2115 or 2116) via a local connection, and such information is correctly transmitted to a client (such as the client 2111, 2112, or 2113) via the print server. Japanese Patent No. 03486553 discloses an adapter that acquires information about a printer status and sends the acquired information to a client. Japanese Patent No. 03573466 discloses a network print server that supports error notification, resumption, and cancellation of printing.
In general, a print server is designed after specifications of a printer are determined, and thus the print server can provide higher-level functions than the printer solely can. Japanese Patent Laid-Open No. 11-184649 (corresponding to U.S. Pat. No. 6,369,909) discloses a print server that can provide high-level functions and be used as an adapter of a plurality of printers having low-level functions. Japanese Patent No. 03495845 discloses a print server capable of registering functions of each of a plurality of printers and selecting a printer suitable for a given print job.
A direct print conversion adapter is used to provide functions very different from functions provided by a conventional print server used in a personal computer environment.
When a direct print conversion adapter is produced, if a newly designed direct print protocol is employed, it is difficult to ensure the compatibility with a large number of existing products. To avoid such problem, it is necessary to directly employ an existing direct print protocol.
There are large differences among direct print protocols which are currently used, and such differences can cause a problem in that information about a printer is not correctly sent to a digital camera or the like. For example, in many direct printing systems in which devices are wirelessly connected, a file transfer protocol designed to transfer data from a digital camera to a printer is used. However, the file transfer protocol used in such direct printing systems does not have specifications in terms of transmission of status information or device information specific to direct printing from a printer to a digital camera and transmission of print job information from the digital camera to the printer.
Even if the problems described above are solved, a new problem can occur as described below with reference to a specific example.
When an image file to be printed is transferred from a mobile telephone having a camera and an infrared transmitting/receiving device according to the IrDA (Infrared Data Association) standard, if an adapter receives the image file via an infrared transmitting/receiving device provided in the adapter, the adapter issues a print job to print the image file to a printer. If transferring the image file from the camera-equipped mobile telephone is successfully completed, the adapter returns a transfer completion response to the camera-equipped mobile telephone.
In the above process, if the print job is issued to the printer after the transfer completion response was returned, there occurs a possibility that the printer cannot immediately process the received print job, for example, because the printer is printing data received from a personal computer or because the printer has an error such as a “no paper” error. A user of the camera-equipped mobile telephone cannot determine, based on the operation result (the completion of the transfer) of the camera-equipped mobile telephone, whether the printing was actually completed.
In a situation in which a printer is connected to a personal computer, there is a possibility that a print request is issued by the personal computer when transferring an image file from a camera-equipped mobile telephone is in process. In this case, if, in this printer, higher priority is assigned to printing for data supplied from the personal computer, a print request issued from the personal computer is performed in preference to the image data being transmitted from the mobile telephone with camera. For example, when a user sets an L-size photographic paper on the printer with the intention of printing an image stored in the mobile telephone with camera, if another user issues a print start command via the personal computer to print a document produced by the personal computer, the document is printed on the L-size photographic paper.
In the conventional technique, there is no consideration on a proper process to be performed when image data are transferred at the same time from a plurality of sending devices. For example, when an adapter having a plurality of connection units is receiving image data concurrently from a plurality of camera-equipped mobile telephones, there is a possibility that the transfer is completed earlier for image data whose transfer was started later than for image data whose transfer was started earlier, because the transfer time depends on the size of image data and transfer method. In this situation, if a print job associated with image data whose transfer was started earlier was issued earlier than a print job associated with image data whose transfer was started later, then the image data whose transfer was started later and was completed earlier is not printed immediately after completion of the transfer, and has to wait until printing of the image data started to be transferred earlier is completed. This results in an unnecessary increase in total time from the start of transfer to the completion of printing.
If printing is started simply in the same order as the order in which transferring is completed, there is a possibility that when different paper sizes or different paper types are specified for respective image data, printing is performed on paper which is wrong in type or size, as in the above-described case in which a personal computer is connected to a printer.
Transfer methods such as IrDA and Bluetooth are designed separately without taking into account the possibility that different transfer methods are used in the same system in which a plurality of devices are connected to a printer via a single adapter with a plurality of connection ports for respective transfer methods and the plurality of devices are allowed to transfer image data to be printed to the printer. That is, the adapter is not designed to handle a plurality of image data transferred at substantially the same time from different devices via different transfer methods such as IrDA and Bluetooth.